In mobile and fixed TDMA networks, frequencies may be reused throughout a given area. Cells are sufficiently separated to insure that co-channel interference is small relative to the desired signal. However, there are limits to how often a frequency can be reused since eventually the carrier-to-interference (C/I) ratio becomes too small for the receiver to properly process a received signal. Since reusing frequencies more often implies more channels per cell or sector, and a corresponding increase in capacity, there is great motivation to develop receivers which can operate at low values of C/I (e.g. 4 dB and below).
Many interference cancellation techniques other than joint demodulation require at least two antennas on the receive path. Although cellular and personal communication system (PCS) base station equipment typically employ multiple antennas on the receive path, mobile terminals and handset typically employ only a single antenna in light of aesthetics and space constraints.
In conventional receivers employing a single antenna, a number of signal processing techniques may be employed to develop an estimate of the desired signal. A common receiver implementation for wireless networks with multipath fading uses a Maximum Likelihood Sequence Estimator (MLSE). A detailed description of MLSE can be found in Forney, “Maximum Likelihood sequence estimation of digital sequences in the presence of intersymbol interference”, IEEE Transactions on Information Theory, Vol, IT-18, pp. 363-378, May 1972.
The MLSE attempts to generate all possible received signals based on all possible transmitted sequences. The resulting locally-generated estimates are compared to the signal that is actually received. The locally-generated signal that most closely matches the received signal indicates the most likely transmitted sequence. The baseband signal flow associated with such a receiver and its corresponding transmitter is shown in FIG. 1.
A bit stream b(t) is input to a modulator 10. Based on its input bit(s)-to-modulator symbol mapping, the modulator 10 produces an output m(t). The output m(t) is an input to a wireless channel 12. For purposes of this discussion, the wireless channel 12 is assumed to be characterized as slow, frequency-selective Rayleigh fading. The “slow” description implies that the wireless channel 12 does not change significantly over a symbol time of the modulator 10. The “frequency-selective” descriptor implies the existence of multipath, the delay of which from the main signal is a significant portion of the modulator symbol time (e.g. greater than 25%). The wireless channel 12 introduces intersymbol interference (ISI), which typically must be compensated for to achieve satisfactory receiver performance. The desired signal after traversing the wireless channel 12 is denoted as C(t).
A separate, co-channel interfering bit stream is denoted by bi(t). A modulator 14 produces an output mi(t) based on the interfering bit stream bi(t). The output mi(t) is an input to a wireless channel 16. A resultant signal of the separate interfering signal path is denoted as I(t).
Although only one interfering signal is shown, there may be more than one interferer depending on frequency reuse of the underlying cellular or PCS network. On a TDMA burst-by-burst basis, there may be one or more interferers whose respective signal powers contribute significantly to the total interference power. For simplicity in discussion, only one interferer is shown.
A received signal r(t) is equal to a sum of C(t) and I(t). The received signal r(t) is input to a MLSE 20. The MLSE 20 may use a Viterbi algorithm to implement the MLSE functionality. In this case, the MLSE 20 may also be referred to as a Viterbi equalizer. A key parameter of the Viterbi equalizer is the number of processing states. The number of processing states is typically calculated by ML, where M represents a modulator alphabet size, and L represents a memory order of the path between the modulator input and the input to the equalizer. For example, a link employing a binary modulation format, M=2, and a memory order of L=4 would require a 24=16-state Viterbi equalizer. A particular state in this example is defined by the four previous modulator symbols, mn−1 to mn−4, wherein the time dependence is accounted for in the subscripts. Assuming the modulator alphabet consists of +1 and −1, the states are defined by the 16 possible combinations of +1 and −1. A possible previous modulator output-to-state mapping is shown in FIG. 2. This particular configuration implies that a current received signal rn can be estimated as a function of a current modulator output symbol mn and the four previous modulator output symbols mn−1 to mn−4 convolved with a channel impulse response (CIR) of the desired signal path.
In general, the signal estimate for state s can be expressed mathematically as:
                                          r            ^                    n                =                              ∑                          l              =              1                                      L              +              1                                ⁢                                          ⁢                                                                      h                  ^                                n                            ⁡                              (                l                )                                      ⁢                          m                              n                -                l                +                1                                            (                s                )                                                                        (        1        )            
where ĥn(l) is the Ith coefficient of the estimate of the CIR for the desired signal path at time n, and m(s) is the previous modulator symbol sequence associated with state s plus the current symbol.
The computation performed for each processing state at each trellis stage within the Viterbi equalizer determines the distance squared between the actual received signal and the locally-generated estimates developed using the above equation. The equation for distance squared is:
                              d          2                =                                                                                            real                  ⁡                                      (                                          r                      n                                        )                                                  -                                  real                  ⁡                                      (                                                                  r                        ^                                            n                                        )                                                                                      2                    +                                                                                    imag                  ⁡                                      (                                          r                      n                                        )                                                  -                                  imag                  ⁡                                      (                                                                  r                        ^                                            n                                        )                                                                                      2                                              (        2        )            
where real( ) and imag( ) are the real and imaginary parts of the respective quantities.
This calculation is often called a branch metric calculation. The branch metric calculation is added to the cumulative metric associated with each state to produce a new set of cumulative metrics as in a standard Viterbi algorithm. For binary modulation, there are two new cumulative metrics generated for each state: one for each of the two possible modulator symbols. Thus, for a 16-state equalizer, there are 32 new paths generated at each trellis stage. At each new state, there are two incident paths. The path having the minimum cumulative metric is selected as the surviving path. This implies that the selected path is a better match to the received signal sequence than the non-selected path. The detailed processing associated with a Viterbi equalizer is described in many references, such as Forney, “The Viterbi Algorithm”, Proceedings of the IEEE, Vol. 61, No. 3, March 1973, pp. 268-278. The end result is that the Viterbi equalizer produces an estimate of the transmitted bit stream b(t) that was input to the modulator 10. Soft decisions would be employed if there was a following stage of channel decoding as is the case for Global System for Mobile Communications (GSM) and ANSI-136 TDMA networks. Soft decisions are described in Hagenauer et al., “A Viterbi Algorithm with Soft-Decision Outputs and its Applications”, CH2682-3/89/0000-1680, 1989, IEEE.
From the above discussion, it is apparent that the complexity of the equalizer is driven by the number of states, since the amount of processing and memory required increases significantly with this key parameter. Further, since the number of states is seen to grow exponentially with the memory order L, it is important to set L to just what is needed to properly process the received signal. Too high a value of L results in a prohibitive amount of processing, while too low a value of L results in poorer signal estimates and thus poorer performance.
Conventional receivers estimate the maximum amount of memory that all of the possible channels may introduce. The number of states is set based on this value, provided that it is not prohibitively large so as to significantly impact complexity. For example, in the GSM network, the most demanding wireless channel from a memory perspective is Hilly Terrain (HT). A detailed description of the HT channel model can be found in the following reference: Digital Cellular Telecommunications System (Phase 2+); Radio Transmission and Reception, (GSM 05.05 version 8.4.0 Release 1999). In the HT channel model, multipath is defined with delays as great as 20 microseconds. Since a Gaussian minimum shift keying (GMSK) symbol time is approximately 3.7 microseconds, L is seen to lie between 5 and 6. However, the power in the multipath components is typically much less than the main signal, and simulations have shown that an L of 4 is sufficient. Thus, most existing GSM equipment uses a 16-state Viterbi equalizer for the binary GMSK modulation format.
Although joint demodulation concepts have been described in the literature, one of the primary issues that have limited their usefulness is implementation complexity.